package com.ruoyi.paiban.service;

import java.text.ParseException;
import java.util.List;

import com.ruoyi.paiban.domain.*;
import com.ruoyi.xiaoshouchuku.domain.XiaoshouChuku;

/**
 * 员工排班Service接口
 * 
 * @author beilian
 * @date 2023-03-31
 */
public interface IPaibanService 
{
    /**
     * 查询员工排班
     * 
     * @param id 员工排班主键
     * @return 员工排班
     */
    public Paiban selectPaibanById(Long id);


    public List<PaibanResult2QianDuan> selectPaiban2Date(String Date,String type) throws ParseException;

    /**
     * 查询员工排班列表
     * 
     * @param paiban 员工排班
     * @return 员工排班集合
     */
    public List<Paiban> selectPaibanList(Paiban paiban);
    /**
     * 按日期查询员工排班列表
     *
     * @param paiban 员工排班
     * @return 员工排班集合
     */
//    public List<Paiban> selectPaibanByDate();

    /**
     * 新增员工排班
     * 
     * @param paiban 员工排班
     * @return 结果
     */
    public int insertPaiban(Paiban paiban);

    /**
     * 修改员工排班
     * 
     * @param paiban 员工排班
     * @return 结果
     */
    public int updatePaiban(Paiban paiban);

    /**
     * 批量删除员工排班
     * 
     * @param date 需要删除的员工排班主键集合
     * @return 结果
     */
    public int deletePaibanByIds(String date);

    /**
     * 删除员工排班信息
     * 
     * @param id 员工排班主键
     * @return 结果
     */
    public int deletePaibanById(Long id);

    List<Paiban> selectPaibanList2monthandyear(String month, String year);

    Paiban selectPaibanBydate(String date);


    /**   签到 */
    public int updataqiandao(Paiban paiban);


    List<meiRiShuJu> selectMeiRi2Xiaoshou(String startDate, String endDate, String yewuyuan) throws ParseException;

    List<xiaoShou2Main> selectMeiRi2xiaoShou2Main();

    List<xiaoShou2Main> selectMeiRi2XiaoShouSearch2New();

    List<kuCun2Main> selectMeiRi2XiaoShouSearch2KuCun();

    List<XiaoshouChuku> selectXiaoShouSearch2YiChuKu(String name);

    List<XiaoshouChuku> selectXiaoShouSearch2WeiChuKu(String name);

    List<XiaoshouChuku> selectXiaoShouChuKuSearch2WeiChuKu(String name);

    List<Paiban> selectPaibanList2after(String dateNow);

    List<meiRiShuJu> selectMeiRi2XiaoShouSearch4Month(String dateNow);

    String selectUser4id(String userId);

    String selectUser4name(String username);

    List<User2Sys> selectUser2name(String username);

    boolean selectContainOpenID(String openid);

    int insertMiniapp(miniapp miniapp);

    User2Sys selectUser2Sys4id(long userid);

    int updateUser2Sys(User2Sys user);

    int updataMiniapp(miniapp miniapp);

    List<miniapp> selectMiniapp(miniapp miniapp);
}

